Large software development projects rely on tracking and testing procedures to identify and correct quality and performance issues. These issues, commonly referred to as “bugs,” have many root causes, including, but not limited to, errors, flaws, mistakes, failures, or faults that exist in the computer program, are induced in the software, or are induced in the computer system that the software is executed on. The results produced by software bugs are as varied as the root causes and include, but are not limited to, refusal of the software to execute, incorrect or unintended results, or performance and stability problems during execution of the software.
As the size of a software development project increases, the number of bugs to be tracked and managed also increases. The time consuming nature of such processes makes it difficult to identify when bugs are fixed. As a result, low priority bugs are often ignored or not tracked at all. This is especially true in cases where the unit test that has been developed for a bug report produces a correct output, but performance issues remain.